/*
 * Copyright 2021 Scheer PAS Schweiz AG
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  imitations under the License.
 */

export type IApiStatus = 'Created' | 'Ready' | 'Retired' | 'Published';
export type IClientStatus =
  | 'Created'
  | 'Ready'
  | 'Retired'
  | 'AwaitingApproval'
  | 'Registered'
  | 'Unregistered';
export type IStatusColors = 'mediumseagreen' | 'darkred' | 'coral';

export type ApiStatusColorMap = Map<IApiStatus | IClientStatus, IStatusColors>;

export const statusColorMap: ApiStatusColorMap = new Map<
  IApiStatus | IClientStatus,
  IStatusColors
>([
  ['Created', 'coral'],
  ['Ready', 'mediumseagreen'],
  ['Retired', 'darkred'],
  ['Unregistered', 'darkred'],
  ['Published', 'mediumseagreen'],
  ['AwaitingApproval', 'coral'],
  ['Registered', 'mediumseagreen']
]);
